linux: Remove unnecessary locking from pcifront free_root_bus_devs().
authorkfraser@localhost.localdomain <kfraser@localhost.localdomain>
Mon, 5 Mar 2007 14:09:19 +0000 (14:09 +0000)
committerkfraser@localhost.localdomain <kfraser@localhost.localdomain>
Mon, 5 Mar 2007 14:09:19 +0000 (14:09 +0000)
Signed-off-by: Keir Fraser <keir@xensource.com>
linux-2.6-xen-sparse/drivers/xen/pcifront/pci_op.c

index 47b4d1e3725efc05eb96d35507f1666ef8396dd9..608c277b2f80ec97c6d0bc51929a095de542ee45 100644 (file)
@@ -239,17 +239,12 @@ static void free_root_bus_devs(struct pci_bus *bus)
 {
        struct pci_dev *dev;
 
-       down_write(&pci_bus_sem);
        while (!list_empty(&bus->devices)) {
-               dev = container_of(bus->devices.next, struct pci_dev, bus_list);
-               up_write(&pci_bus_sem);
-
+               dev = container_of(bus->devices.next, struct pci_dev,
+                                  bus_list);
                dev_dbg(&dev->dev, "removing device\n");
                pci_remove_bus_device(dev);
-
-               down_write(&pci_bus_sem);
        }
-       up_write(&pci_bus_sem);
 }
 
 void pcifront_free_roots(struct pcifront_device *pdev)